1. Field of the Invention
The present invention relates to a host Ethernet adapter, and a method of handling both endpoint communications and network node communications.
2. Background of the Related Art
Many computer systems include a plurality of individual computers or servers that communicate over a network, such as an Ethernet network. Packets of data are sent from computer to computer over an Ethernet network in accordance with one of various communication protocols, such as Transmission Control Protocol (TCP) and Internet Protocol (IP). Each computer in the network will include a host Ethernet adapter (HEA) designed to facilitate communications that terminate at an operating system (OS) running on the computer. Each operating system will include a device driver that interacts with the HEA. In this environment, receive queues are serviced by a single device driver (DD). Although a device driver can be running on several processors within the computer, the device drivers are interlocked so that there is only one processor servicing a particular receive queue at a time. In this model, the device driver draws elements from a receive queue and is responsible for dispatching the work to the processors.
The speed of network communications has increased over time, such that 10 gigabit per second speed for network TCP/IP communications is now common. This high speed, combined with ever increasing volumes of traffic, consume tremendous processing and memory bandwidth in a computer. For example, where the computer is a server running client applications, the processing and memory bandwidth dedicated to handling network communications can limit the server's ability to run applications.